Use correct size for root window with multiple monitors
authorTor Lillqvist <tml@iki.fi>
Sun, 18 Oct 2009 11:35:17 +0000 (14:35 +0300)
committerTor Lillqvist <tml@iki.fi>
Sun, 18 Oct 2009 11:35:17 +0000 (14:35 +0300)
The root window width and height have already been correctly
initialised in _gdk_root_window_size_init() to cover all monitors, so
don't incorrectly re-initialise using GetSystemMetrics(SM_C[XY]SCREEN)
which only gives the size of the primary monitor anyway. (See MSDN.)

This fixes at least gdk_screen_get_{width,height}() which indirectly
affects at least the positioning of combo box pop-up menus on multiple
monitors.

gdk/win32/gdkwindow-win32.c

index 52bd62745e95a75084440d29884a5bac0c11109c..894268810299b9825e9812b4965338ccf248533d 100644 (file)
@@ -277,8 +277,7 @@ _gdk_windowing_window_init (GdkScreen *screen)
   private->y = 0;
   private->abs_x = 0;
   private->abs_y = 0;
-  private->width = GetSystemMetrics (SM_CXSCREEN);
-  private->height = GetSystemMetrics (SM_CYSCREEN);
+  /* width and height already initialised in _gdk_root_window_size_init() */
   private->viewable = TRUE;
 
   gdk_win32_handle_table_insert ((HANDLE *) &draw_impl->handle, _gdk_root);